#ifndef __BAINARY_TREE__H_
#define __BAINARY_TREE__H_

#include "BaseType.h"

class BinaryTreeExample {
public: 
    /*
     * 给你一棵二叉树的根节点 root ，翻转这棵二叉树，并返回其根节点。
     */
    TreeNode* InvertTree(TreeNode* root);

private:
    /* 递归方法：遍历解决 */
    void Traverse(TreeNode* root);

    /* 递归方法：子问题解决 */
    TreeNode* InvertTreeBySubTree(TreeNode* root);
};

#endif